home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / plain / contrib / springer / jns / jns.cmm < prev    next >
Encoding:
Text File  |  1991-12-08  |  22.9 KB  |  558 lines

  1. % This is JNS.CMM the plain TeX macro package
  2. % (CM version) from Springer-Verlag
  3. % for the Journal of Nonlinear Science
  4. % version of 16 July 1990
  5. \font \tafontt                = cmbx10 scaled\magstep2
  6. \font \tafontss               = cmbx5  scaled\magstep2
  7. \font \sixbf                  = cmbx6
  8. \font \tafonts                = cmbx7  scaled\magstep2
  9. \font \eightbf                = cmbx8
  10. \font \sixi                   = cmmi6
  11. \font \eighti                 = cmmi8
  12. \font \tams                   = cmmib10
  13. \font \tbmss                  = cmmib10 scaled 600
  14. \font \tamss                  = cmmib10 scaled 700
  15. \font \tbms                   = cmmib10 scaled 833
  16. \font \tamt                   = cmmib10 scaled\magstep2
  17. \font \smallescriptscriptfont = cmr5
  18. \font \smalletextfont         = cmr5 at 10pt
  19. \font \smallescriptfont       = cmr5 at 7pt
  20. \font \sixrm                  = cmr6
  21. \font \eightrm                = cmr8
  22. \font \tensans                = cmss10
  23. \font \fivesans               = cmss10 at 5pt
  24. \font \sixsans                = cmss10 at 6pt
  25. \font \sevensans              = cmss10 at 7pt
  26. \font \eightsans              = cmss10 at 8pt
  27. \font \tast                   = cmsy10 scaled\magstep2
  28. \font \tasss                  = cmsy5  scaled\magstep2
  29. \font \sixsy                  = cmsy6
  30. \font \tass                   = cmsy7  scaled\magstep2
  31. \font \eightsy                = cmsy8
  32. \font \eightit                = cmti8
  33. \font \eighttt                = cmtt8
  34. %---------------------------------------------------------------------
  35. %-----------------------------------------------------------------------
  36. \magnification=\magstep0
  37. \hsize=12.2cm
  38. \vsize=19.4cm
  39. \hfuzz=2pt
  40. \tolerance=500
  41. \abovedisplayskip=3 mm plus6pt minus 4pt
  42. \belowdisplayskip=3 mm plus6pt minus 4pt
  43. \abovedisplayshortskip=0mm plus6pt minus 2pt
  44. \belowdisplayshortskip=2 mm plus4pt minus 4pt
  45. \predisplaypenalty=0
  46. \clubpenalty=10000
  47. \widowpenalty=10000
  48. \frenchspacing
  49. \newdimen\oldparindent\oldparindent=1.5em
  50. \parindent=1.5em
  51. %-----------------------------------------------------------------------
  52. \def\getsto{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  53. \halign{\hfil
  54. $\displaystyle##$\hfil\cr\gets\cr\to\cr}}}
  55. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr\gets
  56. \cr\to\cr}}}
  57. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr\gets
  58. \cr\to\cr}}}
  59. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  60. \gets\cr\to\cr}}}}}
  61. \def\lid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  62. $\displaystyle##$\hfil\cr<\cr\noalign{\vskip1.2pt}=\cr}}}
  63. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr<\cr
  64. \noalign{\vskip1.2pt}=\cr}}}
  65. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr<\cr
  66. \noalign{\vskip1pt}=\cr}}}
  67. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  68. <\cr
  69. \noalign{\vskip0.9pt}=\cr}}}}}
  70. \def\gid{\mathrel{\mathchoice {\vcenter{\offinterlineskip\halign{\hfil
  71. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip1.2pt}=\cr}}}
  72. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr>\cr
  73. \noalign{\vskip1.2pt}=\cr}}}
  74. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr>\cr
  75. \noalign{\vskip1pt}=\cr}}}
  76. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  77. >\cr
  78. \noalign{\vskip0.9pt}=\cr}}}}}
  79. \def\grole{\mathrel{\mathchoice {\vcenter{\offinterlineskip
  80. \halign{\hfil
  81. $\displaystyle##$\hfil\cr>\cr\noalign{\vskip-1pt}<\cr}}}
  82. {\vcenter{\offinterlineskip\halign{\hfil$\textstyle##$\hfil\cr
  83. >\cr\noalign{\vskip-1pt}<\cr}}}
  84. {\vcenter{\offinterlineskip\halign{\hfil$\scriptstyle##$\hfil\cr
  85. >\cr\noalign{\vskip-0.8pt}<\cr}}}
  86. {\vcenter{\offinterlineskip\halign{\hfil$\scriptscriptstyle##$\hfil\cr
  87. >\cr\noalign{\vskip-0.3pt}<\cr}}}}}
  88. \def\bbbr{{\rm I\!R}} %reelle Zahlen
  89. \def\bbbm{{\rm I\!M}}
  90. \def\bbbn{{\rm I\!N}} %natuerliche Zahlen
  91. \def\bbbf{{\rm I\!F}}
  92. \def\bbbh{{\rm I\!H}}
  93. \def\bbbk{{\rm I\!K}}
  94. \def\bbbp{{\rm I\!P}}
  95. \def\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  96. {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
  97. \def\bbbc{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm C$}\hbox{\hbox
  98. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  99. {\setbox0=\hbox{$\textstyle\rm C$}\hbox{\hbox
  100. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  101. {\setbox0=\hbox{$\scriptstyle\rm C$}\hbox{\hbox
  102. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}
  103. {\setbox0=\hbox{$\scriptscriptstyle\rm C$}\hbox{\hbox
  104. to0pt{\kern0.4\wd0\vrule height0.9\ht0\hss}\box0}}}}
  105. \def\bbbe{{\mathchoice {\setbox0=\hbox{\smalletextfont e}\hbox{\raise
  106. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.3pt height0.7\ht0\hss}\box0}}
  107. {\setbox0=\hbox{\smalletextfont e}\hbox{\raise
  108. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.3pt height0.7\ht0\hss}\box0}}
  109. {\setbox0=\hbox{\smallescriptfont e}\hbox{\raise
  110. 0.1\ht0\hbox to0pt{\kern0.5\wd0\vrule width0.2pt height0.7\ht0\hss}\box0}}
  111. {\setbox0=\hbox{\smallescriptscriptfont e}\hbox{\raise
  112. 0.1\ht0\hbox to0pt{\kern0.4\wd0\vrule width0.2pt height0.7\ht0\hss}\box0}}}}
  113. \def\bbbq{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm Q$}\hbox{\raise
  114. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  115. {\setbox0=\hbox{$\textstyle\rm Q$}\hbox{\raise
  116. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.8\ht0\hss}\box0}}
  117. {\setbox0=\hbox{$\scriptstyle\rm Q$}\hbox{\raise
  118. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}
  119. {\setbox0=\hbox{$\scriptscriptstyle\rm Q$}\hbox{\raise
  120. 0.15\ht0\hbox to0pt{\kern0.4\wd0\vrule height0.7\ht0\hss}\box0}}}}
  121. \def\bbbt{{\mathchoice {\setbox0=\hbox{$\displaystyle\rm
  122. T$}\hbox{\hbox to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  123. {\setbox0=\hbox{$\textstyle\rm T$}\hbox{\hbox
  124. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  125. {\setbox0=\hbox{$\scriptstyle\rm T$}\hbox{\hbox
  126. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}
  127. {\setbox0=\hbox{$\scriptscriptstyle\rm T$}\hbox{\hbox
  128. to0pt{\kern0.3\wd0\vrule height0.9\ht0\hss}\box0}}}}
  129. \def\bbbs{{\mathchoice
  130. {\setbox0=\hbox{$\displaystyle     \rm S$}\hbox{\raise0.5\ht0\hbox
  131. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  132. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  133. {\setbox0=\hbox{$\textstyle        \rm S$}\hbox{\raise0.5\ht0\hbox
  134. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\hbox
  135. to0pt{\kern0.55\wd0\vrule height0.5\ht0\hss}\box0}}
  136. {\setbox0=\hbox{$\scriptstyle      \rm S$}\hbox{\raise0.5\ht0\hbox
  137. to0pt{\kern0.35\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  138. to0pt{\kern0.5\wd0\vrule height0.45\ht0\hss}\box0}}
  139. {\setbox0=\hbox{$\scriptscriptstyle\rm S$}\hbox{\raise0.5\ht0\hbox
  140. to0pt{\kern0.4\wd0\vrule height0.45\ht0\hss}\raise0.05\ht0\hbox
  141. to0pt{\kern0.55\wd0\vrule height0.45\ht0\hss}\box0}}}}
  142. \def\bbbz{{\mathchoice {\hbox{$\sans\textstyle Z\kern-0.4em Z$}}
  143. {\hbox{$\sans\textstyle Z\kern-0.4em Z$}}
  144. {\hbox{$\sans\scriptstyle Z\kern-0.3em Z$}}
  145. {\hbox{$\sans\scriptscriptstyle Z\kern-0.2em Z$}}}}
  146. %--------------------------------------------------------------------------
  147. % petit-fonts
  148. \skewchar\eighti='177 \skewchar\sixi='177
  149. \skewchar\eightsy='60 \skewchar\sixsy='60
  150. \hyphenchar\eighttt=-1
  151. \def\newline{\hfil\break}%
  152. %--------------------------------------------------------------------------
  153. \catcode`@=11
  154. \def\folio{\ifnum\pageno<\z@
  155. \uppercase\expandafter{\romannumeral-\pageno}%
  156. \else\number\pageno\fi}
  157. \catcode`@=12 % at signs are no longer letters
  158. %-------------------------------------------------------
  159. % Definition der versal griechischen Buchstaben
  160. %===============================================================================
  161.   \mathchardef\Gamma="0100
  162.   \mathchardef\Delta="0101
  163.   \mathchardef\Theta="0102
  164.   \mathchardef\Lambda="0103
  165.   \mathchardef\Xi="0104
  166.   \mathchardef\Pi="0105
  167.   \mathchardef\Sigma="0106
  168.   \mathchardef\Upsilon="0107
  169.   \mathchardef\Phi="0108
  170.   \mathchardef\Psi="0109
  171.   \mathchardef\Omega="010A
  172. %-------------------------------------------------------------------------------
  173. \def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
  174. \def\qed{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
  175. \penalty50\hskip1em\null\nobreak\hfil\squareforqed
  176. \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}
  177. %---------------------------------------------------------------------------
  178. \newfam\sansfam
  179. \textfont\sansfam=\tensans\scriptfont\sansfam=\sevensans
  180. \scriptscriptfont\sansfam=\fivesans
  181. \def\sans{\fam\sansfam\tensans}
  182. %---------------------------------------------------------------------------
  183. \def\stackfigbox{\if
  184. Y\FIG\global\setbox\figbox=\vbox{\unvbox\figbox\box1}%
  185. \else\global\setbox\figbox=\vbox{\box1}\global\let\FIG=Y\fi}
  186. %
  187. \def\placefigure{\dimen0=\ht1\advance\dimen0by\dp1
  188. \advance\dimen0by5\baselineskip
  189. \advance\dimen0by0.4true cm
  190. \ifdim\dimen0>\vsize\pageinsert\box1\vfill\endinsert
  191. \else%keine seitenhohe Abbildung
  192. \if Y\FIG\stackfigbox\else
  193. \dimen0=\pagetotal\ifdim\dimen0<\pagegoal%aktuelle Seite ist noch nicht voll
  194. \advance\dimen0by\ht1\advance\dimen0by\dp1\advance\dimen0by1.7true cm
  195. \ifdim\dimen0>\pagegoal\stackfigbox
  196. \else\box1\vskip7true mm\fi
  197. \else\box1\vskip7true mm\fi\fi\fi\let\firstleg=Y}
  198. %
  199. % Abbildungen
  200. \def\begfig#1cm#2\endfig{\par
  201. \setbox1=\vbox{\dimen0=#1true cm\advance\dimen0
  202. by1true cm\kern\dimen0\vskip-.8333\baselineskip#2}\placefigure}
  203. %
  204. \def\begdoublefig#1cm #2 #3 \enddoublefig{\begfig#1cm%
  205. \line{\vtop{\hsize=0.46\hsize#2}\hfill
  206. \vtop{\hsize=0.46\hsize#3}}\endfig}
  207. %-------------------------------------------------------------------
  208. \let\firstleg=Y
  209. % Abbildungslegenden
  210. % Falls Text kleiner als eine volle Zeile, zentriert.
  211. \def\figure#1#2{\if Y\firstleg\vskip1true cm\else\vskip1.7true mm\fi
  212. \let\firstleg=N\setbox0=\vbox{\noindent\petit{\bf
  213. Fig.\ts#1\unskip.\ }\ignorespaces #2\smallskip
  214. \count255=0\global\advance\count255by\prevgraf}%
  215. \ifnum\count255>1\box0\else
  216. \centerline{\petit{\bf Fig.\ts#1\unskip.\
  217. }\ignorespaces#2}\smallskip\fi}
  218. %-----------------------------------------------------------------
  219. % Tabellenkoepfe
  220. \def\tabcap#1#2{\smallskip\vbox{\noindent\petit{\bf Table\ts#1\unskip.\
  221. }\ignorespaces #2\medskip}}
  222. %-------------------------------------------------------------------
  223. \def\begtab#1cm#2\endtab{\par
  224.    \ifvoid\topins\midinsert\medskip\vbox{#2\kern#1true cm}\endinsert
  225.    \else\topinsert\vbox{#2\kern#1true cm}\endinsert\fi}
  226. %-------------------------------------------------------------------
  227. \def\begpet{\vskip6pt\bgroup\petit}
  228. \def\endpet{\vskip6pt\egroup}
  229. %-------------------------------------------------------------------
  230. % Referenzen
  231. \newdimen\refindent
  232. \newlinechar=`\|
  233. \def\begref#1#2{\titlea{}{#1}%
  234. \bgroup\petit
  235. \setbox0=\hbox{#2\enspace}\refindent=\wd0\relax
  236. \if!#2!\else
  237. \ifdim\refindent>0.5em\else
  238. \message{|Something may be wrong with your references;}%
  239. \message{probably you missed the second argument of \string\begref.}%
  240. \fi\fi}
  241. \def\ref{\goodbreak
  242. \hangindent\oldparindent\hangafter=1
  243. \noindent\ignorespaces}
  244. \def\refno#1{\goodbreak
  245. \setbox0=\hbox{#1\enspace}\ifdim\refindent<\wd0\relax
  246. \message{|Your reference `#1' is wider than you pretended in using
  247. \string\begref.}\fi
  248. \hangindent\refindent\hangafter=1
  249. \noindent\kern\refindent\llap{#1\enspace}\ignorespaces}
  250. \def\refmark#1{\goodbreak
  251. \setbox0=\hbox{#1\enspace}\ifdim\refindent<\wd0\relax
  252. \message{|Your reference `#1' is wider than you pretended in using
  253. \string\begref.}\fi
  254. \hangindent\refindent\hangafter=1
  255. \noindent\hbox to\refindent{#1\hss}\ignorespaces}
  256. \def\endref{\goodbreak\endpet}% Ende der Referenzen
  257. %-------------------------------------------------------------------
  258. \def\vec#1{{\textfont1=\tenbf\scriptfont1=\sevenbf
  259. \textfont0=\tenbf\scriptfont0=\sevenbf
  260. \mathchoice{\hbox{$\displaystyle#1$}}{\hbox{$\textstyle#1$}}
  261. {\hbox{$\scriptstyle#1$}}{\hbox{$\scriptscriptstyle#1$}}}}
  262. %---------------------------------------------------------------------
  263. \def\petit{\def\rm{\fam0\eightrm}%
  264. \textfont0=\eightrm \scriptfont0=\sixrm \scriptscriptfont0=\fiverm
  265.  \textfont1=\eighti \scriptfont1=\sixi \scriptscriptfont1=\fivei
  266.  \textfont2=\eightsy \scriptfont2=\sixsy \scriptscriptfont2=\fivesy
  267.  \def\it{\fam\itfam\eightit}%
  268.  \textfont\itfam=\eightit
  269.  \def\bf{\fam\bffam\eightbf}%
  270.  \textfont\bffam=\eightbf \scriptfont\bffam=\sixbf
  271.  \scriptscriptfont\bffam=\fivebf
  272.  \def\sans{\fam\sansfam\eightsans}%
  273.  \textfont\sansfam=\eightsans \scriptfont\sansfam=\sixsans
  274.  \scriptscriptfont\sansfam=\fivesans
  275.  \def\tt{\fam\ttfam\eighttt}%
  276.  \textfont\ttfam=\eighttt
  277.  \normalbaselineskip=10pt
  278.  \setbox\strutbox=\hbox{\vrule height7pt depth2pt width0pt}%
  279.  \normalbaselines\rm
  280. \def\vec##1{{\textfont1=\tbms\scriptfont1=\tbmss
  281. \textfont0=\eightbf\scriptfont0=\sixbf
  282. \mathchoice{\hbox{$\displaystyle##1$}}{\hbox{$\textstyle##1$}}
  283. {\hbox{$\scriptstyle##1$}}{\hbox{$\scriptscriptstyle##1$}}}}}
  284. %-------------------------------------------------------------------
  285. \nopagenumbers
  286. %
  287. % Der Schalter \header gibt an, ob ein "running head" gedruckt werden
  288. % soll; wenn er nicht auf "N" steht kommt ein solcher.
  289. \let\header=Y
  290. \let\FIG=N
  291. \newbox\figbox
  292. \output={\if N\header\headline={\hfil}\fi\plainoutput
  293. \global\let\header=Y
  294. \if Y\FIG\topinsert\unvbox\figbox\endinsert\global\let\FIG=N\fi}
  295. %------------------------------------------------------
  296. \let\lasttitle=N
  297. %------------------------------------------------------
  298. % "running head"
  299. \headline={\petit\def\newline{ }\def\fonote#1{}\ifodd\pageno
  300. \rightheadline\else\leftheadline\fi}
  301. \def\rightheadline{Missing MAINTITLE\hfil\hbox to2.5true
  302. cc{\hfil\folio}}
  303. \def\leftheadline{\hbox to2.5true cc{\folio\hfil}\hfil Missing name(s)
  304. of the author(s)}
  305. \nopagenumbers
  306. %
  307. \let\header=Y
  308. %------------------------------------------------------
  309. \def\Logo{\setbox254=\hbox{ THE JOURNAL OF }%
  310. \vbox{\hrule\hbox{\vrule\vbox{\kern3pt
  311. \copy254
  312. \hbox to\wd254{\hfil NONLINEAR\hfil}
  313. \hbox to\wd254{\hfil SCIENCE\hfil}
  314. \hbox to\wd254{\hfil\number\day.\number\month.\number\year\hfil}
  315. \kern3pt}\vrule}\hrule}}
  316. %------------------------------------------------------
  317. \def\makelogo{\hbox to\hsize{\hfil
  318. \Logo}\vskip2.1cm}
  319. %------------------------------------------------------
  320.  \def\maintitle#1{\vfill\eject
  321.  \makelogo
  322.  \let\header=N\bgroup
  323.  \textfont0=\tafontt \scriptfont0=\tafonts \scriptscriptfont0=\tafontss
  324.  \textfont1=\tamt \scriptfont1=\tams \scriptscriptfont1=\tamss
  325.  \textfont2=\tast \scriptfont2=\tass \scriptscriptfont2=\tasss
  326.  \par\baselineskip=16pt
  327.      \lineskip=0pt
  328.      \tafontt
  329.      \raggedright
  330.      \pretolerance=10000
  331.      \noindent
  332.      \ignorespaces#1
  333.      \vskip10.8pt\egroup
  334.      \nobreak
  335.      \parindent=0pt
  336.      \everypar={\global\parindent=1.5em
  337.      \global\let\lasttitle=N\global\everypar={}}%
  338.      \global\let\lasttitle=A%
  339.      \setbox0=\hbox{\petit\def\newline{ }\def\fonote##1{}\kern2.5true
  340.      cc\ignorespaces#1}\ifdim\wd0>\hsize
  341.      \message{Your MAINTITLE exceeds the headline,
  342. please use a short form
  343. with MAINRUNNING}\gdef\rightheadline{MAIN title
  344. suppressed due to excessive length\hfil\hbox to2.5true cc{\hfil\folio}}%
  345. \else
  346. \gdef\rightheadline{\ignorespaces#1\unskip\hfil\hbox to2.5true
  347. cc{\hfil\folio}}\fi
  348. \catcode`\@=\active
  349.      \ignorespaces}
  350. %------------------------------------------------------
  351. \def\mainrunning#1{\message{Running head on right hand sides
  352. (MAINTITLE)
  353. has been changed}\gdef\rightheadline{\ignorespaces#1\unskip\hfil
  354. \hbox to2.5true cc{\hfil\folio}}}
  355. \def\authorrunning#1{\message{Running head on left hand sides (AUTHOR)
  356. has been changed}\gdef\leftheadline{\hbox to2.5true cc{\folio
  357. \hfil}\hfil\ignorespaces#1\unskip}}
  358. %------------------------------------------------------
  359. \def\subtitle#1{\vskip-5.7pt
  360.      \bgroup
  361. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  362. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  363.      \pretolerance=10000
  364.      \noindent
  365.      \bf
  366.      \rightskip 0pt plus 6em
  367.      \ignorespaces#1
  368.      \vskip10.8pt\egroup
  369.      \nobreak
  370.      \parindent=0pt
  371.      \everypar={\global\parindent=1.5em
  372.      \global\let\lasttitle=N\global\everypar={}}%
  373.      \global\let\lasttitle=A%
  374.      \ignorespaces}
  375. %------------------------------------------------------
  376. \catcode`\@=\active
  377. \def\author#1{\bgroup
  378. \pretolerance=10000
  379. \bf
  380. \noindent
  381. \ignorespaces#1\vskip.1cm\egroup
  382. {\def@##1{}%
  383. \setbox0=\hbox{\petit\kern2.5true cc\ignorespaces#1\unskip}%
  384. \ifdim\wd0>\hsize
  385. \message{The names of the authors exceed the headline, please use a }%
  386. \message{short form with AUTHORRUNNING}\gdef\leftheadline{%
  387. \hbox to2.5true cc{\folio\hfil}\hfil AUTHORS suppressed due to excessive
  388. length}%
  389. \else
  390. \xdef\leftheadline{\hbox to2.5true
  391. cc{\noexpand\folio\hfil}\hfill\ignorespaces#1\unskip}%
  392. \fi
  393. }\let\INS=E}
  394. \def\address#1{\bgroup\petit
  395. \ignorespaces#1\vskip8pt\egroup
  396. \catcode`\@=12}
  397. %---------------------------------------------------------------------
  398. \let\INS=N%
  399. % Aktionen, die bei Antreffen des @-Zeichens zu machen sind;
  400. % drei Faelle a) @ bei AUTHOR, b) 1.@ bei ADDRESS, c) alle weiteren @'s
  401. \def@#1{\if N\INS\unskip$\,^{#1}$\else\global\footcount=#1\relax
  402. \if E\INS\hangindent0.5\parindent\noindent\hbox
  403. to0.5\parindent{$^{#1}$\hfil}\let\INS=Y\ignorespaces
  404. \else\par\hangindent0.5\parindent\noindent\hbox
  405. to0.5\parindent{$^{#1}$\hfil}\ignorespaces\fi\fi}%
  406. \catcode`\@=12
  407. %-------------------------------------------------------------------
  408. \def\received#1{\bgroup\petit\noindent Received #1
  409. \vskip24pt\egroup}
  410. %---------------------------------------------------------------
  411. \long\def\summary#1{\noindent{\bf Summary. }\ignorespaces#1
  412. \vskip12pt}
  413. %---------------------------------------------------------------
  414. \def\keywords#1{\noindent{\bf Key words. }\ignorespaces#1
  415. \par}
  416. %---------------------------------------------------------------
  417. % Beginn Ueberschrift 1. Ordnung
  418. \def\titlea#1#2{\if N\lasttitle\else\vskip-28pt
  419.      \fi
  420.      \vskip18pt plus 4pt minus4pt
  421.      \bgroup
  422. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  423. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  424.      \pretolerance=10000
  425.      \noindent
  426.      \bf
  427.      \rightskip 0pt plus 6em
  428.      \setbox0=\vbox{\vskip23pt\def\fonote##1{}%
  429.      \noindent
  430.      \if!#1!\ignorespaces#2
  431.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  432.      \vskip18pt}%
  433.      \dimen0=\pagetotal\advance\dimen0 by-\pageshrink
  434.      \ifdim\dimen0<\pagegoal
  435.      \dimen0=\ht0\advance\dimen0 by\dp0\advance\dimen0 by
  436.      3\normalbaselineskip
  437.      \advance\dimen0 by\pagetotal
  438.      \ifdim\dimen0>\pagegoal\eject\fi\fi
  439.      \noindent
  440.      \if!#1!\ignorespaces#2
  441.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  442.      \vskip14pt plus4pt minus4pt\egroup
  443.      \nobreak
  444.      \parindent=0pt
  445.      \everypar={\global\parindent=\oldparindent
  446.      \global\let\lasttitle=N\global\everypar={}}%
  447.      \global\let\lasttitle=A%
  448.      \ignorespaces}
  449. %------------------------------------------------------
  450.  % Beginn Ueberschrift 2. Ordnung
  451.  \def\titleb#1#2{\if N\lasttitle\else\vskip-20pt
  452.      \fi
  453.      \vskip18pt plus 4pt minus4pt
  454.      \bgroup
  455.      \pretolerance=10000
  456.      \noindent
  457.      \it
  458.      \rightskip 0pt plus 6em
  459.      \setbox0=\vbox{\vskip23pt\def\fonote##1{}%
  460.      \noindent
  461.      \if!#1!\ignorespaces#2
  462.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  463.      \vskip10pt}%
  464.      \dimen0=\pagetotal\advance\dimen0 by-\pageshrink
  465.      \ifdim\dimen0<\pagegoal
  466.      \dimen0=\ht0\advance\dimen0 by\dp0\advance\dimen0 by
  467.      3\normalbaselineskip
  468.      \advance\dimen0 by\pagetotal
  469.      \ifdim\dimen0>\pagegoal\eject\fi\fi
  470.      \noindent
  471.      \if!#1!\ignorespaces#2
  472.      \else\ignorespaces#1\unskip\enspace\ignorespaces#2\fi
  473.      \vskip8pt plus4pt minus4pt\egroup
  474.      \nobreak
  475.      \parindent=0pt
  476.      \everypar={\global\parindent=\oldparindent
  477.      \global\let\lasttitle=N\global\everypar={}}%
  478.      \global\let\lasttitle=B%
  479.      \ignorespaces}
  480. %------------------------------------------------------
  481.  % Beginn Ueberschrift 3. Ordnung
  482.  \def\titlec#1{\if N\lasttitle\else\vskip-\baselineskip
  483.      \fi
  484.      \vskip18pt plus 4pt minus4pt
  485.      \bgroup
  486. \textfont0=\tenbf \scriptfont0=\sevenbf \scriptscriptfont0=\fivebf
  487. \textfont1=\tams \scriptfont1=\tamss \scriptscriptfont1=\tbmss
  488.      \bf
  489.      \noindent
  490.      \ignorespaces#1\unskip\ \egroup
  491.      \ignorespaces}
  492. %-------------------------------------------------------------------
  493.  % Beginn Ueberschrift 4. Ordnung
  494.  \def\titled#1{\if N\lasttitle\else\vskip-\baselineskip
  495.      \fi
  496.      \vskip12pt plus 4pt minus 4pt
  497.      \bgroup
  498.      \it
  499.      \noindent
  500.      \ignorespaces#1\unskip\ \egroup
  501.      \ignorespaces}
  502. %-------------------------------------------------------------------
  503. \let\ts=\thinspace
  504. \def\footnoterule{\kern-3pt\hrule width 2true cm\kern2.6pt}
  505. % Fussnoten-macros
  506. \newcount\footcount \footcount=0
  507. \def\advftncnt{\advance\footcount by1\global\footcount=\footcount}
  508. % Automatisch numerierte Fussnote, Fussnotentex in petit
  509. \def\fonote#1{\advftncnt$^{\the\footcount}$\begingroup\petit
  510. \parfillskip=0pt plus 1fil
  511. \def\textindent##1{\hangindent0.5\oldparindent\noindent\hbox
  512. to0.5\oldparindent{##1\hss}\ignorespaces}%
  513. \vfootnote{$^{\the\footcount}$}{#1\vskip-9.69pt}\endgroup}
  514. %-------------------------------------------------------------------
  515. \def\item#1{\par\noindent
  516. \hangindent6.5 mm\hangafter=0
  517. \llap{#1\enspace}\ignorespaces}
  518. %-------------------------------------------------------------------
  519. \def\itemitem#1{\par\noindent
  520. \hangindent11.5 mm\hangafter=0
  521. \llap{#1\enspace}\ignorespaces}
  522. %-------------------------------------------------------------------
  523. \def\newenvironment#1#2#3#4{\long\def#1##1##2{\removelastskip
  524. \vskip\baselineskip\noindent{#3#2\if!##1!.\else\unskip\ \ignorespaces
  525. ##1\unskip\fi\ }{#4\ignorespaces##2}\vskip\baselineskip}}
  526. % Lemma, Proposition, Theorem, Corollary
  527. \newenvironment\lemma{Lemma}{\bf}{\it}
  528. \newenvironment\proposition{Proposition}{\bf}{\it}
  529. \newenvironment\theorem{Theorem}{\bf}{\it}
  530. \newenvironment\corollary{Corollary}{\bf}{\it}
  531. %---------------------------------------------------------------------
  532. % Example, Exercise, Problem, Solution, Definition
  533. \newenvironment\example{Example}{\it}{\rm}
  534. \newenvironment\exercise{Exercise}{\bf}{\rm}
  535. \newenvironment\problem{Problem}{\bf}{\rm}
  536. \newenvironment\solution{Solution}{\bf}{\rm}
  537. \newenvironment\definition{Definition}{\bf}{\rm}
  538. %---------------------------------------------------------------------
  539. %Note, Question
  540. \newenvironment\note{Note}{\it}{\rm}
  541. \newenvironment\question{Question}{\it}{\rm}
  542. %---------------------------------------------------------------------
  543. %Proof, Remark
  544. \long\def\remark#1{\removelastskip\vskip\baselineskip\noindent{\it
  545. Remark.\ }\ignorespaces}
  546. \long\def\proof#1{\removelastskip\vskip\baselineskip\noindent{\it
  547. Proof\if!#1!\else\ \ignorespaces#1\fi.\ }\ignorespaces}
  548. %------------------------------------------------------------------
  549. \def\typeset{\petit\noindent This article was processed by the author
  550. using the \TeX\ macro package from Springer-Verlag.\par}
  551. \outer\def\byebye{\bigskip\bigskip\typeset
  552. \footcount=1\ifx\speciali\undefined\else
  553. \loop\smallskip\noindent special character No\number\footcount:
  554. \csname special\romannumeral\footcount\endcsname
  555. \advance\footcount by 1\global\footcount=\footcount
  556. \ifnum\footcount<11\repeat\fi
  557. \vfill\supereject\end}
  558.